System and method for assessing security threats and criminal proclivities

ABSTRACT

A centralized and robust threat assessment tool is disclosed to perform comprehensive analysis of previously-stored and subsequent communication data, activity data, and other relevant information relating to inmates within a controlled environment facility. As part of the analysis, the system detects certain keywords and key interactions with the dataset in order to identify particular criminal proclivities of the inmate. Based on the identified proclivities, the system assigns threat scores to inmate that represents a relative likelihood that the inmate will carry out or be drawn to certain threats and/or criminal activities. This analysis provides a predictive tool for assessing an inmate&#39;s ability to rehabilitate. Based on the analysis, remedial measures can be taken in order to correct an inmate&#39;s trajectory within the controlled environment and increase the likelihood of successful rehabilitation, as well as to prevent potential criminal acts.

BACKGROUND Field

The disclosure relates to a system and method for assessing securitythreats and criminal proclivities within a prison environment.

Background

Prison life can have a profound impact on an individual. In somecircumstances, an inmate is motivated to correct his previous mistakesand turn away from a life of crime. In other circumstances, an inmatemay become hardened, finding no alternative to, or even a certain amountof comfort in, a life of crime. The outcome for each individual candiffer greatly depending on their respective personalities, as well asthe events that befall those inmates during their time in prison.

BRIEF DESCRIPTION OF THE DRAWINGS/FIGURES

The accompanying drawings, which are incorporated herein and form a partof the specification, illustrate embodiments of the present disclosureand, together with the description, further serve to explain theprinciples of the disclosure and to enable a person skilled in thepertinent art to make and use the embodiments.

FIG. 1 illustrates a block diagram of an exemplary monitoringenvironment according to an exemplary embodiment.

FIG. 2 illustrates a block diagram of a monitoring subsystem accordingto an exemplary embodiment.

FIG. 3 illustrates a block diagram of a STAT subsystem according to anexemplary embodiment.

FIGS. 4A-4C depict screenshot illustrations of exemplary reportingdisplays according to various embodiments.

FIG. 5 illustrates a flowchart diagram of an exemplary method foridentifying potential threats within a particular communicationaccording to an embodiment.

FIG. 6 illustrates a flowchart diagram of an exemplary method 600 forassigning STAT scores to an inmate according to an embodiment.

FIG. 7 illustrates a block diagram of an exemplary computer systemaccording to an embodiment.

The present disclosure will be described with reference to theaccompanying drawings. In the drawings, like reference numbers indicateidentical or functionally similar elements. Additionally, the left mostdigit(s) of a reference number identifies the drawing in which thereference number first appears.

DETAILED DESCRIPTION

The following Detailed Description refers to accompanying drawings toillustrate exemplary embodiments consistent with the disclosure.References in the Detailed Description to “one exemplary embodiment,”“an exemplary embodiment,” “an example exemplary embodiment,” etc.,indicate that the exemplary embodiment described may include aparticular feature, structure, or characteristic, but every exemplaryembodiment may not necessarily include the particular feature,structure, or characteristic. Moreover, such phrases are not necessarilyreferring to the same exemplary embodiment. Further, when a particularfeature, structure, or characteristic is described in connection with anexemplary embodiment, it is within the knowledge of those skilled in therelevant art(s) to affect such feature, structure, or characteristic inconnection with other exemplary embodiments whether or not explicitlydescribed.

The exemplary embodiments described herein are provided for illustrativepurposes, and are not limiting. Other exemplary embodiments arepossible, and modifications may be made to the exemplary embodimentswithin the spirit and scope of the disclosure. Therefore, the DetailedDescription is not meant to limit the invention. Rather, the scope ofthe invention is defined only in accordance with the following claimsand their equivalents.

Embodiments may be implemented in hardware (e.g., circuits), firmware,software, or any combination thereof. Embodiments may also beimplemented as instructions stored on a machine-readable medium, whichmay be read and executed by one or more processors. A machine-readablemedium may include any mechanism for storing or transmitting informationin a form readable by a machine (e.g., a computing device). For example,a machine-readable medium may include read only memory (ROM); randomaccess memory (RAM); magnetic disk storage media; optical storage media;flash memory devices; electrical, optical, acoustical or other forms ofpropagated signals (e.g., carrier waves, infrared signals, digitalsignals, etc.), and others. Further, firmware, software, routines,instructions may be described herein as performing certain actions.However, it should be appreciated that such descriptions are merely forconvenience and that such actions in fact result from computing devices,processors, controllers, or other devices executing the firmware,software, routines, instructions, etc. Further, any of theimplementation variations may be carried out by a general purposecomputer, as described below.

For purposes of this discussion, any reference to the term “module”shall be understood to include at least one of software, firmware, andhardware (such as one or more circuit, microchip, or device, or anycombination thereof), and any combination thereof. In addition, it willbe understood that each module may include one, or more than one,component within an actual device, and each component that forms a partof the described module may function either cooperatively orindependently of any other component forming a part of the module.Conversely, multiple modules described herein may represent a singlecomponent within an actual device. Further, components within a modulemay be in a single device or distributed among multiple devices in awired or wireless manner.

The following Detailed Description of the exemplary embodiments will sofully reveal the general nature of the invention that others can, byapplying knowledge of those skilled in relevant art(s), readily modifyand/or adapt for various applications such exemplary embodiments,without undue experimentation, without departing from the spirit andscope of the disclosure. Therefore, such adaptations and modificationsare intended to be within the meaning and plurality of equivalents ofthe exemplary embodiments based upon the teaching and guidance presentedherein. It is to be understood that the phraseology or terminologyherein is for the purpose of description and not of limitation, suchthat the terminology or phraseology of the present specification is tobe interpreted by those skilled in relevant art(s) in light of theteachings herein.

Overview

As discussed above, inmates in a prison facility are greatly affected bythe prison environment. Whereas some seek to correct the mistakes thatfound them incarcerated, others embrace a criminal lifestyle. A majorconcern in the American criminal justice system is the rate ofrecidivism—the number of inmates that return to prison after releasefrom repeat crimes. Due to the dramatic overpopulation of America'sprisons, recidivism is a significant problem. Additionally, thereclamation of former inmates back into normal society is a benefit thatmost can't deny. As a public policy issue, we would rather our citizenscontribute to society and be present amongst their families than towallow behind bars.

In current prison environments, inmates are monitored in numerous ways.This is primarily through the monitoring of inmate telephonecommunications, but is also manifested in other ways. In preparation forthis application, applicant has discovered that, when repeat offenders'monitored histories are reviewed carefully, the circumstances that ledto their reincarceration can often be gleaned from various events thatoccurred throughout their time under monitoring. For example, aconvicted carjacker using library time to research automobiles andautomobile manuals, an inmate convicted of assault repeatedly getting infights in the yard, a convicted gang member associating with other gangmembers, etc.

Therefore, described herein is a system and method for utilizingmonitored information about an inmate to predict the inmate's proclivityto commit certain crimes in the future. This same method can likewise beused to perform general threat assessment as an investigative tool.Utilizing this system, inmates with particularly high threat scores canbe counseled, or some other preventative measure can be taken, in orderto increase the likelihood of successful rehabilitation. This system isdescribed in further detail below with respect to the relevant figures.

Communication System

FIG. 1 illustrates a block diagram of an exemplary monitoringenvironment 100 according to an exemplary embodiment. In the environment100, a central communication system 110 serves as the primary monitoringsystem. Multiple monitored devices 102A-D are connected to the centralcommunication system 110. The monitored devices 102 can include avariety of different monitored devices. For example, monitored device102A can include wired telephones within the prison environment used bythe inmates for personal calls, monitored devices 102B can includepersonal electronics devices provided to the inmates by the prison forpersonal communication, Internet use, and data streaming services,monitored devices 102C can include one or more microphones hidden eitherin the yard or cell blocks to pick up personal conversations amongstinmates, and monitored devices 102D can include other data gatheringdevices, such as library checkout terminals, work sign-in terminals,etc. In addition to the monitored devices 102, a terminal 104 is alsoconnected to the central communication system by which administrativeofficials can manually enter relevant information, such as incidentreports, work reviews, and any other information that may be relevant tothreat assessment and criminal proclivities.

All of this information is routed to the central communication system110 via the monitoring subsystem 114. The monitoring subsystem 114 isresponsible for analyzing the received information anddetecting/identifying potential threat topics, as described in furtherdetail below.

The threat topics identified by the monitoring subsystem 114 are forwardto the STAT (security threat assessment tool) subsystem 116. The STATsubsystem 116 accesses the inmate database 112 to retrieve known threatinformation relating to the inmate associated with the received threattopics. The monitoring subsystem 114 analyzes the threat topics receivedfrom the monitoring subsystem 114 against the retrieved threatinformation from the inmate database 112, and makes severaldetermination. In an embodiment, the STAT subsystem 116 determineswhether the threat information stored in the inmate database 112requires updating, and forwards the updated threat information to theinmate database 112 for storage. In an embodiment, the STAT subsystem116 also determines whether to alert administrative personnel as to aparticular threat. These and other features of the STAT subsystem 116will be discussed in further detail below.

Monitoring Subsystem

FIG. 2 illustrates a block diagram of a monitoring subsystem 200according to an exemplary embodiment. The monitoring subsystem includesa transcription 210, word/topic recognition 220, data parsing 230 andthreat assignment 240 and represents an exemplary embodiment of themonitoring subsystem 114.

The monitoring subsystem 200 receives various types of data from themonitored devices 102. As described above, this data can include voicecommunications and data communications (such as Internet browsinginformation, etc.). The monitoring subsystem 200 also received manualentries from the terminal 104. Initially, the monitoring subsystem 200performs inmate identification in order to identify the inmateassociated with the communication. When an inmate uses an authorizeddevice, he/she is required to submit to a detailed authenticationprocess in order to ensure the inmate's identity. Once verified, theidentity information is transmitted to the monitoring subsystem 200along with the communication data. Thus, the inmate identification 250can identify the inmate based on this information. For a manual entry,the administrator submitting the entry is required to identify theinmate in order to generate the report. Once again, the monitoringsubsystem 200 can identify the inmate based on that information, whichis transmitted to the central communication system 110 from theterminal.

For live-monitored communications, the inmate identification 250performs voice analysis on the received audio data. As part of thisanalysis, the inmate identification 250 uses audio analysis to detect aprimary and secondary, etc. voice in the recording. Once the multiplevoices have been identified, they are isolated from each other. This canbe performed through audio segmentation by detecting alternating vocalcharacteristics within the audio stream. After the different voices havebeen isolated, the inmate identification 250 performs vocal analysis oneach of the different voices in order to generate correspondingvoiceprints or other vocal signatures. After the voiceprints have beengenerated, the voiceprints are compared to stored voiceprints bycorrelating the generated voiceprints to previously-stored voiceprints.In an embodiment, the voiceprint comparison can account for vocalfluctuations, such as prosody. The comparison returns probabilities withrespect to one or more inmates of positive identification. Based onthose probabilities, the identity of the speaker can be determined.

Depending on the type of information received, the monitoring subsystemmust perform different functions in order to properly analyze thereceived information. For example, voice information is routed to atranscription subsystem 210, which transcribes the voice informationinto text using speech recognition processing.

Once in text format, the communication is forward to a word recognitionsubsystem 220. The word recognition subsystem 220 is configured toanalyze the communication and detect certain keywords. The detection ofkeywords consists of identifying within the text communication wordsfrom a keyword dictionary. In other words, keywords are generallyidentified in advance and stored in a keyword database (i.e.,dictionary). After the keywords have been detected, topic recognition260 identifies one or more topics based on the identified keywords. Inorder to identify topics, a topic database maps a plurality of keywordsto each of a variety of different topics. A topic may have one or morekeywords associated with it and may share any or all of those keywordswith another topic. The topic recognition 260 identifies the topicsdiscussed during the communication by identifying those topics in thetopic database having keywords identified in the communication.

In an embodiment, the keywords stored in the topic database are rankedaccording to the relative importance or relevance to the correspondingtopic. For example, the topic of “murder” may include keywords such as“kill” and “waste”. In the database, although both of those keywords arestored in the “murder” topic, the keyword “kill” is ranked 10 (out of10, highest being most relevant/important) whereas “waste” is ranked 4(due to its many other non-offensive uses). In this embodiment, thetopic recognition 260 may identify all topics with matching keywords inthe communication along with a score for each of the identified topics.The scores may be a sum of the keyword values identified, or an averageof those values.

As discussed above, the monitoring subsystem 200 also receives manualentries. These entries can take many forms, such as incident reports,work reviews, etc., thus making analysis according to keyword searchingrather difficult. Therefore, in an embodiment, the manual entries aresubmitted according to pre-established formats. Thus, data parsing 230parses out the relevant information from the manual entry in order toidentify keywords from the entry. These keywords are then forwarded tothe topic recognition 260, and processed in the same manner as describedabove.

Once all topics have been identified, threat assignment 240 is performedin order to identify the final relevant threats associated with theinmate. In an embodiment, threat assignment outputs all identifiedtopics, without modification. Although this is considered the mostthorough approach, it also results in a large number of false positives.Therefore, in an alternative embodiment, the threat assignment 240 alsolooks at the topic scores assigned by the topic recognition 260. Forexample, a particular inmate communication may have had ten topicsidentified, each with its own score. In a first embodiment, the threatassignment 240 outputs all topics whose scores exceed a predeterminedthreshold. In a second embodiment, the threat assignment 240 outputsonly a predetermined number of the highest scored topics from amongthose detected. In a third embodiment, the threat assignment outputs thetopics whose scores exceed the predetermined threshold up to a maximumnumber of topics.

STAT Subsystem

FIG. 3 illustrates a block diagram of a STAT subsystem 300 according toan exemplary embodiment. The STAT subsystem 300 includes data retrieval310, threat retrieval 320, data analysis 330, threat application 340 andSTAT scoring 350, and may represent an exemplary embodiment of the STATsubsystem 116. The STAT subsystem 300 is responsible for performingstatistical analysis on a wide variety of inmate data in order togenerate a STAT score for different inmates. The STAT score is arepresentation of the inmate's propensity to commit or be drawn to aparticular crime.

In order to carry out ongoing STAT scoring functionality, the STATsubsystem 300 must generate initial STAT scores for the inmatepopulation. This typically occurs shortly after installation at aparticular prison communication. In an embodiment, the STAT subsystem isinstalled within a central communication system that serves multipleprisons within a particular region, and thus performs the initial STATscoring for the inmate population of all served prisons.

For the initial STAT scoring, the STAT subsystem 300 has access to oneor more inmate databases containing various information relating theinmates of the inmate population. Such information may include callinghistory, police reports, incident reports, work reviews/reports,behavior records, counseling matters, rap sheets, and Internet browsinghistories, among others. This information may be stored in a singleinmate database or may be spread across multiple databases.

The data retrieval 310 provides the STAT subsystem access to the desireddatabases, and may retrieve that information to be processed andanalyzed locally at the STAT subsystem 300. The data analysis engine 330is an extremely robust data analysis tool that is capable of examiningthe collective data and identifying relationships therein. This can beperformed, for example, through virtual link charting. Link charting isa visual data analysis method that is used to make sense of complexrelationships hidden within large amounts of data. The method is carriedout by visually depicting individual events and drawing lines betweenevents that share some relationship. The lines can be color coded fordifferent relationships. In this scenario, more lines connected to acommon node provide an investigative point of interest within the dataand show how other such nodes relate to that point of interest.

A similar virtual process can be carried out by the data analysis engine330. However, where a visual method is carried out for humanunderstanding, the data analysis engine 330 performs the analysisvirtually, forgoing the visual representation. Instead, the dataanalysis engine 330 identifies and tracks relationships betweendifferent data points in order to identify trends in the data. Whenenough data has been analyzed, the data analysis engine 330 identifiescertain patterns of behavior based on the identified relationships thatshow a particular inmate's state of mind toward certain criminal actionsor his/her associations with certain known bad actors. Based on theseidentified patters, the data analysis engine 330 extracts from the datacertain proclivities for each inmate.

The data analysis engine 330 also assigns a weight to each of theidentified proclivities based on the strength of the relationships amongthe different nodes. For example, when many relationships exist in thedataset amongst data points relating to assault and battery, assault andbattery is identified as a proclivity of the inmate and is weightedrelatively high. On the other hand, when few relationships exist in thedataset amongst data points relating to murder, murder is identified asa proclivity of the inmate and is weighted relatively low. In anembodiment, a predetermined minimum number of relationships among commondata points are required in order for a particular topic to beidentified as a proclivity for a particular inmate. This helps to reducedata processing and avoid false positives.

Once the data analysis engine 330 identifies the various proclivities ofthe inmate and assigns a weight to each of those proclivities, thatinformation is passed to the STAT scoring 350 (in the initial analysisinstance, the threat application 340 adds nothing because no new threatshave been identified, as will be discussed further below).

The STAT scoring 350 is configured to provide one or more threat scoresto the inmate based on the data received. The threat scores arenumerical values that indicate a particular inmate's relative likelihoodto commit a bad act in line with the associated threat. Such threats mayinclude any known criminal act, civil violation, rule break, or anyother discouraged or tracked behavior. Such threats may include, and arenot limited to, theft, murder, assault and battery, burglary, weaponviolations, sexual assault, racism, skipping work, drug violations,among many others.

In an embodiment, the STAT scoring 350 calculates a threat score for theinmate for all known threats. Threats for which an inmate showed nopropensity to commit, or whose relationships were deemed by the dataanalysis engine 330 as falling below the required minimum, are scoredzero. Positive value scores are generated for all other threats. In anembodiment, negative scores could also be assigned for threats againstwhich the inmate has shown a particular resistance, which can also bedetected by the data analysis engine 330.

In the case of the initial analysis, the STAT scoring 350 examines theweights applied by the data analysis engine. In an embodiment, the STATscoring 350 simply assigns those weights to be the STAT scores for thecorresponding threats and no further processing takes place. However, ina preferred embodiment, the weights assigned by the data analysis engine330 are normalized against the proclivities of the entire population. Inorder to perform the normalization process, the STAT scoring 350receives the weights of the inmates in addition to other data, such asthe numbers of relationships for each of the different threats and thenumber of data points analyzed for each inmate. In an embodiment, theSTAT scoring 350 calculates a ratio between the number of relationshipsdetected and the number of data points analyzed for a particular inmateand then scales the weight by that ratio. A similar process is performedfor the other inmates, and then all scores are scaled based on therelative number of data points analyzed. Other methods are alsoavailable for normalizing scoring values for particular threats. Theinitial STAT scores are then stored in the inmate database 112 forfuture use.

Once the initial STAT scores have been calculated and stored, the STATsubsystem can be used for ongoing and real-time analysis, such as willbe discussed below.

In the case of ongoing threat analysis, the threat retrieval 320receives threat information from the monitoring subsystem 114. Asdescribed above, the threat information may include one or more topicsthat were identified in a particular communication or activity thatdemonstrate the inmate's proclivity toward a certain threat. In anembodiment, and as discussed above, this information may alsodemonstrate a certain resistance to a particular threat. Upon receipt ofthe threat information, the data retrieval 310 retrievespreviously-calculated threat information from the inmate database 112relating to the inmate. The threat application 340 then applies thenewly-received threat information to the previously stored threatinformation. In an embodiment, the threat application compares theweights associated with the received threats to those of thepreviously-stored threats and forward the results to the STAT scoring350.

The threat application 340 also performs alert control based on thecomparison. Specifically, based on the comparison of the weights of thenewly-received threat information to those of the previously-storedthreat information, the threat application 340 may take certain remedialactions in order to reduce the risk that the inmate carries out aparticular threat.

There are many different events that may trigger an alert. Such eventsmay include a measurable increase in an inmate's proclivity toward aparticular threat, increased associations with known offenders of aparticular threat, detection of certain keywords, etc. Additionally, thethreat application 340 may recommend different remedial actions inresponse to the detection of the event, such as counseling, segregation,monitoring, etc.

After the threat application 340 has compared the newly-received threatsto the previously-stored threat information, the threat application 340forwards the results to the STAT scoring 350. The STAT scoring 350determines whether the STAT score for any particular threat requiresupdating based on the comparison data. In an embodiment, the STAT scorecarries out an algorithm that adjusts the inmate's STAT score based onthe comparison data between the previous and new threat information. Forexample, in an embodiment, the STAT scoring 350 increases the STAT scorewhen threat information history shows an increase in the frequency ofthe particular threat being detected. In an embodiment, the STAT scoring350 also increases the STAT score when a newly-received threat has asufficiently high weight associated with it, representing a relativelyhigh threat.

Once updated, the STAT scoring 350 forwards the new STAT scores to theinmate database 112 for storage. In a preferred embodiment, the updatedSTAT score is stored as “current” so that it can be readily accessed andobserved, but does not overwrite previous STAT scores. In this manner,the history of an inmate's STAT scores and trends within those STATscores can be observed over time by both an evaluating administrator andthe STAT subsystem 300.

As described above, the STAT scoring 350 calculates a STAT score foreach inmate and for each threat. Thus, each inmate has a STAT score foreach known threat. These STAT scores represent the inmate's proclivitytoward a particular threat and his/her relative likelihood of committingthe threat. In an embodiment, the STAT score 350 also calculates ageneral STAT score that defines the inmate's relative likelihood tocommit any of the known threats.

In the manner described above, an inmate's proclivity toward aparticular threat or any known threat can be tracked and monitored.Furthermore, the information gleaned from the STAT analysis can beutilized prior to the inmate committing any of the known threats inorder to prevent those threats from being carried out and to adjust theinmate's circumstances to improve his chance at successfulrehabilitation.

Reporting

Although the STAT scores are calculated and stored in the background ofthe central communication system 100, those scores can be reported toadministrative personnel in a variety of different ways. FIGS. 4A-4Cdepict screenshot illustrations of exemplary reporting displaysaccording to various embodiments.

FIG. 4A depicts a screenshot illustration of an exemplary Call DetailReport. Call Detail Reports show a listing of all telephone callsinvolving one or more inmates, and can include several different detailsabout those calls, such as called number, inmate identity, callduration, call timestamp, etc. As shown in FIG. 4A, in an embodiment, anicon can be displayed on the Call Detail Report. An administrator canuse a graphical pointing device at the terminal (104) to hover over orclick on the icon. In response, the system a predefined level of detailrelating to the identified inmate's STAT score. In an embodiment, thesystem displays the user's general STAT score in response to the user'shovering over the icon, and displays a detailed STAT report (e.g., allindividual STAT scores) in response to the user clicking on the icon. Inanother embodiment, the system displays the most relevant STAT score tothe corresponding communication (e.g., a STAT score for an identifiedthreat within the communication).

FIG. 4B illustrates a screenshot illustration of an exemplary ReportGeneration screen. At numerous screens within the graphical userinterface of the administrative system, an administrator can navigatethrough a menu of options to generate a full STAT report for anidentified inmate. The resulting report can be customized according tothe administrator's inputs to a menu. For example, the report can beconfigured to produce STAT scores for one or multiple inmates, can beconfigured to display general STAT scores or specific STAT scores, andcan even provide spreadsheet or graphical representations of STAT scorehistories and trends.

FIG. 4C illustrates a screenshot illustration of a Report Customizationscreen. This screen provides a variety of different dropdown menus,checkboxes, and other customization tools to allow the administrator tocustomize the report to his preferences. Within the Report Customizationscreen, the system also provides the administrator with the currentgeneral STAT score and a date at which the STAT score was last updatedand reviewed. In an embodiment, the system also displays a name of areviewer.

FIG. 5 illustrates a flowchart diagram of an exemplary method 500 foridentifying potential threats within a particular communicationaccording to an embodiment. The method of FIG. 5 will be described withreference to relevant structural components of the monitor subsystem200.

In the method 500, voice, data and manual entries can all be receivedand processed for potential threats. In the case of Voice, thecommunication is first transcribed (510). Using the transcript of thecommunication, word recognition is then performed (520) to detectparticular keywords. These keywords are stored in a database in relationto known threats. In the case of Data, the communication does notrequire transcription, and thus word recognition (520) can be performeddirectly thereon. In the case of manually entered data, the data mustfirst be parsed (530) according to predefined formats and rules in orderto extract relevant information.

After the keywords have been recognized within the communication (520)or the data has been parsed from the manual entry (530), topicrecognition (540) is then performed on the resulting information, whichmatches the keywords and parsed data to known threats stored in adatabase. After the topics have been recognized (540), final threats andweights are assigned to the communication (550) in the manner describeabove.

FIG. 6 illustrates a flowchart diagram of an exemplary method 600 forassigning STAT scores to an inmate according to an embodiment. Themethod 600 will be described with reference to the STAT subsystem 300.

The method 600 includes two primary paths: in an embodiment, a firstpath (left) is used for an initial STAT analysis of a large volume ofdata, whereas a second path (right) is carried out to update STAT scoresbased on one or a few subsequent communications. Along the left path,the volumes of data are retrieved or accessed (610). From analyzing thedata, the system identifies certain nodes (620) that are of interest.Such nodes may be the use of particular keywords, the interaction withknown bad actors, punishment for certain activities, etc. In the sameprocess, the system identifies relationships between the different nodes(630). Based on these relationships, the system determines an inmate'sproclivity for a particular threat (640). The system also assignsweights (650) to those proclivities based on the strength of therelationships. STAT scoring (695) is then performed on this information.

Along the right path, new threat information is received (660). Thisthreat information may be from one or multiple subsequent communicationsthat have occurred after the initial scoring. In order to analyze thenew threat information, old treat information is retrieved from adatabase (670). The new and old threat information is compared to eachother (680) in order to detect changes and/or trends. Depending on theresults of the comparison, alerts may be generated (690) andadministrative personnel may be notified. STAT scoring (695) is thenperformed on the comparison information and/or threat information. STATscoring (695) evaluates the received information in order to assign ascore to a particular inmate for a particular threat, as described indetail above.

Exemplary Computer Implementation

It will be apparent to persons skilled in the relevant art(s) thatvarious elements and features of the present disclosure, as describedherein, can be implemented in hardware using analog and/or digitalcircuits, in software, through the execution of computer instructions byone or more general purpose or special-purpose processors, or as acombination of hardware and software.

The following description of a general purpose computer system isprovided for the sake of completeness. Embodiments of the presentdisclosure can be implemented in hardware, or as a combination ofsoftware and hardware. Consequently, embodiments of the disclosure maybe implemented in the environment of a computer system or otherprocessing system. For example, the methods of FIGS. 5 and 6 can beimplemented in the environment of one or more computer systems or otherprocessing systems. An example of such a computer system 700 is shown inFIG. 7. One or more of the modules depicted in the previous figures canbe at least partially implemented on one or more distinct computersystems 700.

Computer system 700 includes one or more processors, such as processor704. Processor 704 can be a special purpose or a general purpose digitalsignal processor. Processor 704 is connected to a communicationinfrastructure 702 (for example, a bus or network). Various softwareimplementations are described in terms of this exemplary computersystem. After reading this description, it will become apparent to aperson skilled in the relevant art(s) how to implement the disclosureusing other computer systems and/or computer architectures.

Computer system 700 also includes a main memory 706, preferably randomaccess memory (RAM), and may also include a secondary memory 708.Secondary memory 708 may include, for example, a hard disk drive 710and/or a removable storage drive 712, representing a floppy disk drive,a magnetic tape drive, an optical disk drive, or the like. Removablestorage drive 712 reads from and/or writes to a removable storage unit716 in a well-known manner. Removable storage unit 716 represents afloppy disk, magnetic tape, optical disk, or the like, which is read byand written to by removable storage drive 712. As will be appreciated bypersons skilled in the relevant art(s), removable storage unit 716includes a computer usable storage medium having stored therein computersoftware and/or data.

In alternative implementations, secondary memory 708 may include othersimilar means for allowing computer programs or other instructions to beloaded into computer system 700. Such means may include, for example, aremovable storage unit 718 and an interface 714. Examples of such meansmay include a program cartridge and cartridge interface (such as thatfound in video game devices), a removable memory chip (such as an EPROM,or PROM) and associated socket, a thumb drive and USB port, and otherremovable storage units 718 and interfaces 714 which allow software anddata to be transferred from removable storage unit 718 to computersystem 700.

Computer system 700 may also include a communications interface 720.Communications interface 720 allows software and data to be transferredbetween computer system 700 and external devices. Examples ofcommunications interface 720 may include a modem, a network interface(such as an Ethernet card), a communications port, a PCMCIA slot andcard, etc. Software and data transferred via communications interface720 are in the form of signals which may be electronic, electromagnetic,optical, or other signals capable of being received by communicationsinterface 720. These signals are provided to communications interface720 via a communications path 722. Communications path 722 carriessignals and may be implemented using wire or cable, fiber optics, aphone line, a cellular phone link, an RF link and other communicationschannels.

As used herein, the terms “computer program medium” and “computerreadable medium” are used to generally refer to tangible storage mediasuch as removable storage units 716 and 718 or a hard disk installed inhard disk drive 710. These computer program products are means forproviding software to computer system 700.

Computer programs (also called computer control logic) are stored inmain memory 706 and/or secondary memory 708. Computer programs may alsobe received via communications interface 720. Such computer programs,when executed, enable the computer system 700 to implement the presentdisclosure as discussed herein. In particular, the computer programs,when executed, enable processor 704 to implement the processes of thepresent disclosure, such as any of the methods described herein.Accordingly, such computer programs represent controllers of thecomputer system 700. Where the disclosure is implemented using software,the software may be stored in a computer program product and loaded intocomputer system 700 using removable storage drive 712, interface 714, orcommunications interface 720.

In another embodiment, features of the disclosure are implementedprimarily in hardware using, for example, hardware components such asapplication-specific integrated circuits (ASICs) and gate arrays.Implementation of a hardware state machine so as to perform thefunctions described herein will also be apparent to persons skilled inthe relevant art(s).

CONCLUSION

It is to be appreciated that the Detailed Description section, and notthe Abstract section, is intended to be used to interpret the claims.The Abstract section may set forth one or more, but not all exemplaryembodiments, and thus, is not intended to limit the disclosure and theappended claims in any way.

The disclosure has been described above with the aid of functionalbuilding blocks illustrating the implementation of specified functionsand relationships thereof. The boundaries of these functional buildingblocks have been arbitrarily defined herein for the convenience of thedescription. Alternate boundaries may be defined so long as thespecified functions and relationships thereof are appropriatelyperformed.

It will be apparent to those skilled in the relevant art(s) that variouschanges in form and detail can be made therein without departing fromthe spirit and scope of the disclosure. Thus, the disclosure should notbe limited by any of the above-described exemplary embodiments, butshould be defined only in accordance with the following claims and theirequivalents.

What is claimed is:
 1. A system for calculating a threat score for aninmate of a controlled environment facility, the system comprising: amonitoring subsystem configured to: receive an inmate communication;capture a voice sample of the inmate from the inmate communication;generate an inmate voiceprint based on the voice sample; compare theinmate voiceprint to previously-stored voiceprints in order to identifythe inmate involved in the inmate communication; detect topics in theinmate communication; and assign weights to the detected topics; and athreat assessment subsystem configured to: receive the detected topicsand the assigned weights from the monitoring subsystem; scale theweights assigned to the detected topics by a number of data pointsexamined for the inmate; normalize the scaled weights based on scaledweights of other inmates; retrieve previously-stored threat informationrelating to the inmate; compare the received detected topics and scaledweights to the previously-stored threat information; and assign a threatscore to the inmate based on the comparison.
 2. The system of claim 1,wherein the monitoring subsystem is further configured to detectkeywords in the inmate communication, and wherein the topics aredetected based on the detected keywords.
 3. The system of claim 2,further comprising a keyword database that stores a plurality ofpredefined keywords and a plurality of predefined topics, each of theplurality of predefined keywords being associated with at least one ofthe plurality of predefined topics.
 4. The system of claim 3, whereinthe monitoring subsystem is configured to detect the topics byidentifying, for each of the detected keywords, the stored plurality ofpredefined topics to which the detected keywords correspond.
 5. Thesystem of claim 4, wherein the monitoring subsystem is configured toassign the weights to the detected topics based on a relative amount ofdetected keywords that correspond to the detected topics.
 6. The systemof claim 1, wherein the received inmate communication is a voicecommunication, and wherein the monitoring subsystem is furtherconfigured to transcribe the voice communication to text.
 7. The systemof claim 6, wherein the monitoring subsystem is configured to identifythe inmate by: parsing a plurality of voices within the voicecommunication based on an audio analysis; generating a voiceprint for aparsed voice from among the plurality of voices; and comparing thegenerated voiceprint to previously-stored voiceprints associated withinmates of the controlled environment facility.
 8. A system forcalculating a threat score for an inmate of a controlled environmentfacility, the system comprising: a monitoring subsystem configured to:monitor inmate communication and activities; generate an inmatevoiceprint from an inmate voice sample extracted from the inmatecommunication; and identify the inmate based on the inmate voiceprint;and a threat assessment subsystem configured to: access inmateinformation from one or more databases that store communication andactivity data of the inmate; identify a plurality of data relationshipswithin the communication and activity data; determine correspondingstrengths of the data relationships; assign weights to the relationshipsbased on the strengths; identify threats corresponding to the detectedrelationships; assign a positive score to all threats whosecorresponding relationship weight exceeds a predetermined minimum value;identify all other threats as non-observed; and calculate the threatscore based on the strengths.
 9. The system of claim 8, wherein the oneor more databases include call records, visitation records, and incidenthistories of the inmate.
 10. The system of claim 8, wherein theidentifying and determining are performed as part of a virtual linkanalysis of the communication and activity data.
 11. The system of claim8, wherein the threat assessment subsystem is configured to determinethe strengths of the data relationships based on a number of logicalconnections between data elements.
 12. The system of claim 8, whereinthe threat assessment subsystem is configured to calculate the threatscore for the inmate by: scaling the weights assigned to therelationships by a number of data points examined for the inmate; andnormalizing the scaled weights based on scaled weights of other inmates.13. The system of claim 8, wherein the calculating of the threat scorefurther includes assigning a base value to all non-observed threats. 14.A method for calculating a threat score for an inmate of a controlledenvironment facility, the method comprising: receiving an inmatecommunication; generating an inmate voiceprint based on an inmate voicesample extracted from the inmate communication; identifying the inmatebased on the inmate voiceprint; detecting topics in the inmatecommunication; assigning weights to the detected topics; scaling theweights assigned to the detected topics by a number of data pointsexamined for the inmate; normalizing the scaled weights based on scaledweights of other inmates; comparing scaled weighted detected topics topreviously-stored threat information; and assigning a threat score tothe inmate based on the comparison.
 15. The method of claim 14, furthercomprising detecting keywords in the inmate communication, wherein thetopics are detected based on the detected keywords.
 16. The method ofclaim 15, further comprising associating a plurality of predefinedkeywords with at least one of the plurality of predefined topics withina keyword database.
 17. The method of claim 14, wherein the receivedinmate communication is a voice communication, the method furthercomprising: transcribing the voice communication to text.
 18. The methodof claim 17, further comprising: parsing a plurality of voices withinthe voice communication based on an audio analysis; generating avoiceprint for a parsed voice from among the plurality of voices; andcomparing the generated voiceprint to previously-stored voiceprintsassociated with inmates of the controlled environment facility in orderto identify the inmate.
 19. The method of claim 14, wherein the topicsare detected by identifying, for each of the detected keywords, thestored plurality of predefined topics to which the detected keywordscorrespond.